#include <stdio.h>

#define SM_DIFF		0	//Differential			[0] Normal in-phase audio	[1] left channel inverted
#define SM_FFWD		1	//Fast forward			[0] Normal playback 	 	[1] fast forward on
#define SM_RESET	2	//Soft reset			[0] No reset 		 	[1] reset
#define SM_UNUSED1	3	//Unused set to 0
#define SM_PDOWN	4	//Powerdown			[0] Power on			[1] Power off
#define SM_UNUSED2	5	//Unused set to 0
#define SM_UNUSED3	6	//Unused set to 0
#define SM_BASS		7	//Bass/treble enhancer		[0] off				[1] on	
#define SM_DACT		8	//DCLK active edge		[0] rising			[1] falling
#define SM_BITORD	9	//Byte order on SPI bus 	[0] MSB first			[1] MSB last
#define SM_IBMODE	10	//Input bus mode		[0] Slave			[1] Master
#define SM_IBCLK	11	//Input bus clk when master	[0] 512 kHz			[1] 1024 kHz

unsigned char low = 0x00, high = 0x00;

int main()
{
 high ^= (1<<(SM_DACT-8));
 low ^= (1<<(SM_DIFF));
 high ^= (1<<(SM_BITORD-8));
 low ^= (1<<SM_FFWD);
 printf("SM_DACT on  SM_BITORD on SM_DIFF on SM_FFWD on | High : %x - %d Low : %x - %d\n", high, high, low, low);
 low ^=(1<<SM_FFWD);
 printf("SM_DACT on  SM_BITORD on SM_DIFF on SM_FFWD off | High : %x - %d Low : %x - %d\n", high, high, low, low);
 low ^=(1<<SM_FFWD);
 printf("SM_DACT on  SM_BITORD on SM_DIFF on SM_FFWD off | High : %x - %d Low : %x - %d\n", high, high, low, low);
 return 0;
}
